#ifndef __INITIALIZE_H
#define __INITIALIZE_H
#include "stm32f4xx.h"
/*LED_GPIO_DEFINE*/
#define LED_GPIO_PORT      GPIOB
#define LED0_GPIO_PIN				GPIO_Pin_1
#define LED1_GPIO_PIN				GPIO_Pin_0
#define USART1_GPIO_PORT      GPIOA
#define USART1_RX_GPIO_PIN				GPIO_Pin_10
#define USART1_TX_GPIO_PIN				GPIO_Pin_9

#define KEY0_KEY1_GPIO_PORT      GPIOH
#define KEY0_GPIO_PIN				GPIO_Pin_3
#define KEY1_GPIO_PIN				GPIO_Pin_2
#define KEY2_GPIO_PORT      GPIOC
#define KEY2_GPIO_PIN				GPIO_Pin_13

#define WKUP_GPIO_PORT      GPIOA
#define WKUP_GPIO_PIN				GPIO_Pin_0

#define LED0_ON     GPIO_ResetBits(GPIOB, GPIO_Pin_1)
#define LED0_OFF    GPIO_SetBits(GPIOB,  GPIO_Pin_1)
#define LED1_ON     GPIO_ResetBits(GPIOB, GPIO_Pin_0)
#define LED1_OFF    GPIO_SetBits(GPIOB,  GPIO_Pin_0)

#define KEY0      GPIO_ReadInputDataBit(GPIOH,GPIO_Pin_3)
#define KEY1      GPIO_ReadInputDataBit(GPIOH,GPIO_Pin_2)
#define KEY2      GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_13)
#define WK_UP     GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_0)

#define IIC2_GPIO_PORT      GPIOH
#define SCL_GPIO_PIN				GPIO_Pin_4
#define SDA_GPIO_PIN				GPIO_Pin_5
#define IIC2_INT_PORT      GPIOB
#define INT_GPIO_PIN				GPIO_Pin_12

#define SPI5_GPIO_PORT      GPIOF
#define SPI5_NSS_PIN        GPIO_Pin_6
#define SPI5_SCK_PIN        GPIO_Pin_7
#define SPI5_MISO_PIN        GPIO_Pin_8
#define SPI5_MOSI_PIN        GPIO_Pin_9

#define SAI1_CLK_GPIO_PORT              GPIOE
#define SAI1_CLK_GPIO_PIN               GPIO_Pin_2
#define SAI1_SCK_GPIO_PORT              GPIOE
#define SAI1_SCK_GPIO_PIN               GPIO_Pin_5
#define SAI1_FSA_GPIO_PORT              GPIOE
#define SAI1_FSA_GPIO_PIN               GPIO_Pin_4
#define SAI1_SDA_GPIO_PORT              GPIOE
#define SAI1_SDA_GPIO_PIN               GPIO_Pin_6
#define SAI1_SDB_GPIO_PORT              GPIOE
#define SAI1_SDB_GPIO_PIN               GPIO_Pin_3
#define KEY0_PRES 1
#define KEY1_PRES 2
#define KEY2_PRES 3
#define WKUP_PRES 4
#define USART1_BUFF_SIZE 1000
void F429_INIT(void);
void SPL_RCC_ENABLE(void);
void LED_GPIO_Config(void);
void USART1_Config(void);
void KEY_Config(void);
void IIC_Init(void);
void SPI5_Init(void);
#endif
